home *** CD-ROM | disk | FTP | other *** search
/ PC Play 129 / pc play 129.iso / Demo / hidden / hidden.exe / main.pak / Scripts_gates.nut < prev    next >
Encoding:
Text File  |  2009-11-20  |  3.2 KB  |  111 lines

  1. // quest level - scene: Q_Brooken_House
  2.  
  3. function Quest_Init()
  4. {
  5.    // item name, obj name, show, activate
  6.    MakeItem("ItemKey1",  "sm_key1",  false, true);
  7.    MakeItem("ItemKey2",  "sm_key2",  false, true);
  8.    MakeItem("ItemMag",   "sm_mag",   false, true);
  9.    MakeItem("ItemSpell", "sm_spell", false, true);
  10.    MakeItem("ItemPurse", "sm_purse", false, true);
  11.    
  12.    // zone name, obj name, item name, show, activate
  13.    MakeZone("ZoneNiche1Closed", "niche1_closed", "ItemMag",    true,  true);
  14.    MakeZone("ZoneNiche1",       "niche1_",       "ItemKey1",  false,  true);
  15.    MakeZone("ZoneNiche2Closed", "niche2_closed", "ItemMag",    true,  true);
  16.    MakeZone("ZoneNiche2",       "niche2_",       "ItemKey2",  false,  true);
  17.    MakeZone("ZoneCrow",         "obj_crow",      "ItemPurse",  true,  true);
  18.    MakeZone("ZoneGate",         "obj_gate",      "ItemSpell",  true, false);
  19.       
  20.    // obj/item/zone name, effect
  21.    Hide("k_5_", EFFECT_NONE);
  22.    Hide("purse3_", EFFECT_NONE);
  23.    Hide("spell5_", EFFECT_NONE);
  24.    
  25.    g_niche_counter <- 0;
  26.    g_gate_counter <- 0;
  27.    
  28.    return true;
  29. }
  30.  
  31. function OnEvent(event,name="")
  32. {
  33.    switch (event)
  34.    {
  35.    case EVENT_INIT:
  36.       print("OnEvent Init");
  37.       return Quest_Init();
  38.       break;
  39.       
  40.    case EVENT_ZONE: // actived zone click with item
  41.       print("OnEvent Zone " + name);
  42.       if (name == "ZoneNiche1Closed")
  43.       {
  44.          Hide(name, EFFECT_FADE);
  45.          Show("ZoneNiche1", EFFECT_NONE);
  46.          g_niche_counter ++;
  47.          if (g_niche_counter == 1)
  48.             GetItem("ItemMag");
  49.          return true;
  50.       }
  51.       if (name == "ZoneNiche2Closed")     
  52.       {
  53.          Hide(name, EFFECT_FADE);
  54.          Show("ZoneNiche2", EFFECT_NONE);
  55.          g_niche_counter ++;
  56.          if (g_niche_counter == 1)
  57.             GetItem("ItemMag");
  58.          return true;
  59.       }
  60.       if (name == "ZoneNiche1")
  61.       {
  62.          Deactivate(name);
  63.          Hide("obj_spears", EFFECT_FADE);
  64.          g_gate_counter++;
  65.          if (g_gate_counter == 2)
  66.          {
  67.             Activate("ZoneGate");
  68.             Show("spell5_", EFFECT_FADE);
  69.          }
  70.          return true;
  71.       }
  72.       if (name == "ZoneNiche2")     
  73.       {
  74.          Deactivate(name);
  75.          Hide("obj_grate", EFFECT_FADE);
  76.          Show("purse3_", EFFECT_FADE);
  77.          g_gate_counter++;
  78.          if (g_gate_counter == 2)
  79.          {
  80.             Activate("ZoneGate");
  81.             Show("spell5_", EFFECT_FADE);
  82.          }
  83.          return true;
  84.       }
  85.       if (name == "ZoneCrow")
  86.       {
  87.          Hide(name, EFFECT_FADE);
  88.          Show("k_5_", EFFECT_FADE);
  89.          return true;
  90.       }
  91.       if (name == "ZoneGate")
  92.       {
  93.          FadeMusic();
  94.          Hide(name, EFFECT_FADE);
  95.          return true;
  96.       }
  97.       break;
  98.       
  99.    case EVENT_GROUP: // compleated group click
  100.       print("OnEvent Group " + name);
  101.       if (name == "key_1")     {Show("ItemKey1");return true;}
  102.       if (name == "key_2")     {Show("ItemKey2");return true;}
  103.       if (name == "magnifier") {Show("ItemMag");return true;}
  104.       if (name == "spell")     {Show("ItemSpell");return true;}
  105.       if (name == "purse")     {Show("ItemPurse");return true;}
  106.       break;
  107.    }
  108.    return false;
  109. }
  110.  
  111.